A digital television (DTV) receiver can receive DTV signals, process them and display them on an analog or digital monitor, allow for interactivity, and act as a personal video recorder (PVR). A DTV receiver may be embodied in a set top box (STB), or may be integrated with a television. DTV receivers generally use several processors, memories, and other electronic components. These components process the digital signals, store information, allow user interaction with the DTV set, and output the video and audio. These systems are becoming increasingly complex and expensive as more functionality is added to DTV receivers.
FIG. 1 illustrates a prior art digital television controller system. The DTV system 100 comprises several components. The central processing unit (CPU) 102 controls the system 100. A tuner 104 receives an analog or digital (DTV) signal. A digital signal may be a high definition (HD) or other signal. The output of the tuner 104 is sent to a National Television Standards Committee (NTSC) decoder 106. The NTSC decoder 106 decodes the television signal received by the tuner 104 and sends the signal to an advanced universal DTV decoder 112, which outputs an analog TV signal suitable for display on an analog television monitor. The DTV decoder 112 outputs a signal to an analog chassis 114, which displays a TV image on a cathode ray tube (CRT) or other display device 116. The DTV decoder 112 also sends output to an audio digital to analog converter (DAC) 118, which outputs the TV audio to speakers. A panel driver 120 controls a panel 122, which allows for user interaction with the system. A synchronous dynamic random access memory (SDRAM) 124 is a memory for the DTV decoder 112.
The tuner 104 also outputs the DTV signal to a demodulator 110, which then outputs a demodulated signal to an STB/PVR controller 126. The STB/PVR controller 126 can control the functions of the STB and a PVR. The STB/PVR controller 126 has its own SDRAM memory 128. The STB/PVR controller 126 is also coupled with a hard disk 130, which can store video and audio for a PVR. A boot read only memory (ROM) 132 provides data used by the system 100 to start up. An audio decoder 134 decodes digital audio. The audio decoder 134 has its own SDRAM memory 136. As can be seen in FIG. 1, three separate memories are being used to store data for three different subsystems. Other, additional systems may also have their own separate memories. Having many separate memories increases the complexity and the cost of the system 100. Further, there may be times when, for example, the audio decoder 134 is not being used because there is no audio. During those times, the memory 136 dedicated to the audio decoder 134 will be unused even though it may be useful for other subsystems. Since all of the memory in the system 100 is not available to all of the subsystems that require memory, the memories will be underutilized, and the system will be less efficient than it could be. Sometimes, data in one memory has to be transferred to another memory in order to be processed or shared with the processor attached to the second memory, and the system is less efficient because of the extra transfer operations required to share data.